﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Text;
using System.Web.UI;
using Interfaces;
using System.Web.UI.WebControls;

public class TKBBasePage : Page
{
	public TKBBasePage()
	{

	}

    #region "MessagebOx"
    IMessageBox mBox = null;

    public void MessageBox(string pMesaj)
    {
        mBox.Show(pMesaj);
    }
    public void MessageBox(string pMesaj, MesajTuruEnum pMesajTuruEnum)
    {
        mBox.Show(pMesaj, pMesajTuruEnum);
    }
    public void MessageBox(string pMesaj, MesajTuruEnum pMesajTuruEnum, bool pTamamButtonVisible)
    {
        mBox.Show(pMesaj, pMesajTuruEnum, pTamamButtonVisible);
    }
    public void MessageBox(string pMesaj, MesajTuruEnum pMesajTuruEnum, bool pTamamButtonVisible, string pForeColor, string pBackColor, bool pFontBold, bool pFontItalic, FontSize pFontSize)
    {
        mBox.Show(pMesaj, pMesajTuruEnum, pTamamButtonVisible, pForeColor, pBackColor, pFontBold, pFontItalic, pFontSize);
    }

    public void MessageBox(string[] pMesajList)
    {
        MessageBox(MesajiOlustur(pMesajList));
    }
    public void MessageBox(string[] pMesajList, MesajTuruEnum pMesajTuruEnum)
    {
        MessageBox(MesajiOlustur(pMesajList), pMesajTuruEnum);
    }
    public void MessageBox(string[] pMesajList, MesajTuruEnum pMesajTuruEnum, bool pTamamButtonVisible)
    {
        MessageBox(MesajiOlustur(pMesajList), pMesajTuruEnum, pTamamButtonVisible);
    }
    public void MessageBox(string[] pMesajList, MesajTuruEnum pMesajTuruEnum, bool pTamamButtonVisible, string pForeColor, string pBackColor, bool pFontBold, bool pFontItalic, FontSize pFontSize)
    {
        mBox.Show(MesajiOlustur(pMesajList), pMesajTuruEnum, pTamamButtonVisible, pForeColor, pBackColor, pFontBold, pFontItalic, pFontSize);
    }

    public void MessageBox(List<String> pMesajList)
    {
        MessageBox(MesajiOlustur(pMesajList.ToArray()));
    }
    public void MessageBox(List<String> pMesajList, MesajTuruEnum pMesajTuruEnum)
    {
        MessageBox(MesajiOlustur(pMesajList.ToArray()), pMesajTuruEnum);
    }
    public void MessageBox(List<String> pMesajList, MesajTuruEnum pMesajTuruEnum, bool pTamamButtonVisible)
    {
        MessageBox(MesajiOlustur(pMesajList.ToArray()), pMesajTuruEnum, pTamamButtonVisible);
    }
    public void MessageBox(List<String> pMesajList, MesajTuruEnum pMesajTuruEnum, bool pTamamButtonVisible, string pForeColor, string pBackColor, bool pFontBold, bool pFontItalic, FontSize pFontSize)
    {
        mBox.Show(MesajiOlustur(pMesajList.ToArray()), pMesajTuruEnum, pTamamButtonVisible, pForeColor, pBackColor, pFontBold, pFontItalic, pFontSize);
    }

    private string MesajiOlustur(string[] pMesajList)
    {
        StringBuilder sb = new StringBuilder();
        foreach (string s in pMesajList)
        {
            sb.Append(s + Environment.NewLine);
        }
        return sb.ToString();
    }

    public void MessageBoxClose()
    {
        mBox.Close();
    }

    private void MsgBoxNesnesiOlustur()
    {
        if (this.Master != null)
        {
            mBox = this.Master.FindControl("MessageBox1") as IMessageBox;
            if (mBox != null)
            {
                if (Session["AppExcMessage"] == null || Session["AppExcMessage"].ToString() == string.Empty)
                    mBox.Show("", MesajTuruEnum.Bos);
                else
                    mBox.Show(Session["AppExcMessage"].ToString(), MesajTuruEnum.Uyari);
            }
        }
    }
    #endregion

    protected override void OnLoad(EventArgs e)
    {
        MsgBoxNesnesiOlustur();
        base.OnLoad(e);
    }
}
